﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Runtime.Caching;
using System.Collections.Specialized;

namespace PIS.TechGrid.Caching
{
    public abstract class AbstractedCache
    {
        #region Inner Cache

        protected readonly MemoryCache innerCache;

        protected readonly CacheMap cacheMap;

        #endregion

        #region Variables

        public string CacheName
        {
            get;
            protected set;
        }

        #endregion

        #region Constractors

        public AbstractedCache(string cacheName, NameValueCollection config = null)
        {
            this.CacheName = cacheName;

            innerCache = new MemoryCache(cacheName, config);

            cacheMap = new CacheMap();
        }

        #endregion
    }
}
